package com.dmagic.cms.entity;

import java.io.Serializable;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.TableGenerator;

import org.hibernate.annotations.Where;

import com.dmagic.cms.common.Constants;
import com.dmagic.cms.common.entity.ModifyInfoEntity;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

/**
 * The persistent class for the UploadFileInfo database table.
 */
@Entity
@Table(name = "dmagic_upload_file_info")
@Where(clause = ModifyInfoEntity.ISOBSOLETE_DATE_IS_NULL)
@JsonAutoDetect
@JsonIgnoreProperties(value = { "createdBy", "createdOn", "modifiedBy", "modifiedOn", "isObsoleteDate" })
public class UploadFileInfo extends ModifyInfoEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	private Long uploadFileInfoId;

	private Long uploadFileSetInfoId;

	private String clientHostName;

	private String fileEncoding;

	private String fileName;

	private Long fileSize;

	private String fileDesc;

	private String fileType;

	private String location;

	private Boolean isMainFile = false;

	public UploadFileInfo() {
		super();
	}

	@Id
	@GeneratedValue(strategy = GenerationType.TABLE, generator = Constants.ID_GENERATOR)
	@TableGenerator(name = Constants.ID_GENERATOR, // Generator Name which same
													// with
	// generator
	table = Constants.ID_GENERATOR, // Generator Table Name
	pkColumnName = Constants.PK_COLUMNNAME, // Generator Table column Id name
	valueColumnName = Constants.VALUE_COLUMN_NAME, // Generator Table column Id
													// value
	pkColumnValue = "UploadFileInfo", // entity Name
	allocationSize = (Constants.ID_GENERATOR_ALLLCATIONSIZE), initialValue = Constants.ID_GENERATOR_INITIALVALUE)
	public Long getUploadFileInfoId() {
		return this.uploadFileInfoId;
	}

	public void setUploadFileInfoId(Long uploadFileInfoId) {
		this.uploadFileInfoId = uploadFileInfoId;
	}

	public String getClientHostName() {
		return this.clientHostName;
	}

	public void setClientHostName(String clientHostName) {
		this.clientHostName = clientHostName;
	}

	public String getFileEncoding() {
		return this.fileEncoding;
	}

	public void setFileEncoding(String fileEncoding) {
		this.fileEncoding = fileEncoding;
	}

	public String getFileName() {
		return this.fileName;
	}

	public void setFileName(String fileName) {
		this.fileName = fileName;
	}

	public Long getFileSize() {
		return this.fileSize;
	}

	public void setFileSize(Long fileSize) {
		this.fileSize = fileSize;
	}

	public String getFileDesc() {
		return fileDesc;
	}

	public void setFileDesc(String fileDesc) {
		this.fileDesc = fileDesc;
	}

	public String getFileType() {
		return this.fileType;
	}

	public void setFileType(String fileType) {
		this.fileType = fileType;
	}

	public String getLocation() {
		return this.location;
	}

	public void setLocation(String location) {
		this.location = location;
	}

	public Long getUploadFileSetInfoId() {
		return uploadFileSetInfoId;
	}

	public Boolean getIsMainFile() {
		return isMainFile;
	}

	public void setIsMainFile(Boolean isMainFile) {
		this.isMainFile = isMainFile;
	}

	/**
	 * @param Integer
	 */
	public void setUploadFileSetInfoId(Long uploadFileSetInfoId) {
		this.uploadFileSetInfoId = uploadFileSetInfoId;
	}

}